my_var = 27 def my_function(param1=123, param2='Python'): for key,val in locals().items(): print('key {}: {}'.format(key, str(val))) my_var = my_var + 1 # causes an error! def better_function(param1=123, param2='Python'): global my_var for key,val in locals().items(): print('key {}: {}'.format(key, str(val))) my_var = my_var + 1 print('my_var:',my_var) # my_function(123456, 765432.0) better_function()